package com.zenithmind.common.annotation;

import com.zenithmind.common.constant.OperationTypeEnum;

import java.lang.annotation.*;

/**
 * 操作日志注解
 * 用于标记需要记录操作日志的方法
 */
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Log {

    /**
     * 操作描述
     */
    String description() default "";

    /**
     * 操作类型
     */
    OperationTypeEnum operationType() default OperationTypeEnum.OTHER;
    
    /**
     * 是否记录请求参数
     */
    boolean recordRequestParams() default true;
    
    /**
     * 是否记录响应结果
     */
    boolean recordResponseResult() default false;
} 